Nous avons développé plusieurs tests pour notre bibliothèque. En effet, en plus de l'exemple de base fourni avec le sujet, nous avons fait tourner notre bibliothèque sur 
deux exemples gourmands en ressources : Fibonacci et le tri fusion. Les arbres de calcul de chacun de ces programmes sont importants, ils sont donc des tests efficaces. Nous 
avons également implémenté un module qui montre la stabilité de notre bibliothèque.\\

Si l'exemple de base passe comme prévu, nous allons voir comment cela se passe avec des executions un peu plus poussées.

\section{Tri fusion} 

Notre programme de tri est tout à fait classique, un nouveau thread est créé et lancé pour faire le tri des deux sous-tableaux, qu'on lance grâce au join, puis on effectue le 
traitement sur le tableau global, qui est maintenant trié. On passe la taille du tableau en paramètre, ce qui nous a permis de constater qu'un peu avant 2000, notre bibliothèque plante.\\
~\\
La figure~\ref{tri} présente l'execution de notre programme de test :

  \begin{center}
      \begin{figure}[h]
         \includegraphics[scale=0.35]{pictures/triFusion.png}
         \caption{\label{tri} Execution du tri fusion avec un tableau de taille 25}
      \end{figure}    
  \end{center}


\section{Fibonacci}

Nous voulons maintenant tester notre bibliothèque avec le calcul du nombre de Fibonacci. Le calcul se fait récursivement grâce à l'équation :
\[
  F(n) = \left\{ 
  \begin{array}{l l}
    F(n-1)+F(n-2) & \quad \text{si $n>=2$}\\
    1 & \quad \text{si $n=1$}\\
    0 & \quad \text{si $n=0$}\\
  \end{array} \right.
\]
C'est-à-dire dans un thread de calcul, après avoir vérifié que l'entrée $n$ ne soit pas $0$ ou $1$, le thread courant lance deux threads dont l'un prend $n-1$ comme l'entrée et l'autre prend $n-2$, puis il se met en attente de la fin d'exécution de ces deux nouveau thread. A la fin de la fonction, il ne reste plus qu'à retourner la somme des résultats obtenus par les deux thread fils.

Notre test fonctionne bien sur le 23 premiers nombres de Fibonacci (de $F(0)$ à $F(22)$):
\begin{center}
    \begin{figure}[h!]
	\includegraphics[scale=0.8]{pictures/fibo22.png}
	\caption{Calcul du nombre de Fibonacci 22}
    \end{figure}
\end{center}

Pourtant, nous avons un message d'erreur lorsque nous essayons de calculer 24ème nombre de Fibonacci ($F(23)$) :
\begin{center}
    \begin{figure}[h!]
	\includegraphics[scale=0.8]{pictures/fibo23.png}
	\caption{Calcul du nombre de Fibonacci 23}
    \end{figure}
\end{center}

L'assertion échoue lors de la création de thread. Nous somme convaincu que le problème vient du fait que la limite du nombre de thread dans la machine est atteint. 


\section{Stabilité}

